package day11;

//解法：找规律

// i love beijing.
// .gnijieb evol i  =>逆置一次
// beijing. love i  =>逆置两次

// =>先逆置字符串，之后在对每个单词进行逆置
public class 倒转字符串 {
	public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) { // 注意 while 处理多个 case
            String s=in.nextLine();
            //逆置字符串
            StringBuffer str=new StringBuffer(s);
            str.reverse();
            //ret收集结果
            StringBuffer ret=new StringBuffer();
            //双指针l,r: l枚举左边界，r找字符串右边界
            int left=0,n=s.length();
            while(left<n){
                int right=left;
                //找字符串的边界
                while(right<n&&str.charAt(right)!=' '){
                    right++;
                }
                //反正单词并收集
                ret.append(new StringBuffer(str.substring(left,right)).reverse()).append(' ');
                //处理连续的空格
                if(right<n&&str.charAt(right)==' '){
                    right++;
                }
                //到下一个单词的起始位置
                left=right;
            }
            System.out.println(ret.toString());
        }
    }
}
